const { body,query } = require('express-validator');  // 进行数据校验

// 用户校验规则
const userrules = [
  body('userName').exists().withMessage("用户名是必须的").bail()
    .notEmpty().withMessage("用户名不能为空").bail()
    .isAlphanumeric().withMessage('用户名应该是字母和数字的组合'),
  body('userPassword').exists().withMessage("密码是必须的").bail()
    .notEmpty().withMessage("密码不能为空"),
  body('avatar').exists().withMessage("头像内容是必须的").bail()
    .notEmpty().withMessage("头像不能为空").bail()
    .isURL().withMessage("头像必须是一个网址链接").bail()
]

const linkrules = [
  body('name').exists().withMessage("链接名称字段是必须的").bail()
    .isLength({max:50}).withMessage("名称字段长度最大为50")
    .notEmpty().withMessage("链接名称不能为空").bail(),
  body('address').exists().withMessage("地址字段是必须的").bail()
    .notEmpty().withMessage("地址不能为空").bail(),
  body('category').exists().withMessage("分类字段是必须的").bail()
    .isLength({max:20}).withMessage("分类字段长度最大为20")
    .notEmpty().withMessage("分类不能为空").bail(),
  body('code').exists().withMessage("密码字段是必须的").bail()
]

const userNamerules = [
  query('userName').exists().withMessage("用户名即用户ID是必须的").bail()
  .notEmpty().withMessage("用户名不能为空").bail(),
]

const updateUserinforules = [
  body('userName').exists().withMessage("用户名是必须的").bail()
    .notEmpty().withMessage("用户名不能为空").bail()
    .isAlphanumeric().withMessage('用户名应该是字母和数字的组合'),
  body('avatar').exists().withMessage("头像内容是必须的").bail()
    .notEmpty().withMessage("头像不能为空").bail()
    .isURL().withMessage("头像必须是一个网址链接").bail()
]

module.exports = {
  userrules,linkrules,userNamerules,updateUserinforules
}